.admin-menu {
    display: flex;
    flex-shrink: 0;
    flex-direction: column;
    width: 0;
    height: 100%;
    padding: 0.75rem 0;
    margin: 0;
    background: hsl(var(--background));
    transition: 0.225s ease-in-out;
    min-height: calc(100% - 56px);
    transition-property: width, background, box-shadow, opacity;
    border-right: 0;
    opacity: 0;
    pointer-events: none;
    overflow-x: hidden;

    &.open {
        width: 260px;
        border-right: 1px solid hsl(var(--border));
        opacity: 1;
        pointer-events: all;
    }

    .menu-item {
        display: flex;
        flex-direction: row;
        width: calc(100% - 1.5rem);
        height: max-content;
        padding: 0.75rem 1rem;
        align-items: center;
        margin: 0.15rem 0.75rem;
        user-select: none;
        cursor: pointer;
        transition: 0.2s ease-in-out;
        border-radius: var(--radius);
        font-size: 16px;
        color: hsl(var(--text-secondary));

        &:hover {
            color: hsl(var(--text));
        }

        &.active {
            color: hsl(var(--text));
            background: hsl(var(--card-hover));
        }

        & > * {
            flex-shrink: 0;
        }

        .menu-item-title {
            font-size: 1rem;
        }

        .menu-item-icon {
            width: 1.25rem;
            height: 1.25rem;
            margin-right: 0.5rem;
            margin-left: 0.5rem;
            transform: translateY(1px);

            svg {
                width: 1.25rem;
                height: 1.25rem;
            }
        }
    }

    @media (max-width: 668px) {
        &.open {
            width: 100%;
            border-right: 0;
        }
    }
}

.admin-content {
    flex-grow: 1;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    touch-action: pan-y;
    background: hsla(var(--background-container));

    & > .scrollarea-viewport > div {
        display: flex !important;
    }
}
